Re-engeneering a Safety-Critical Application Using SPARK 95 and GNORT
نویسندگان
چکیده
This paper describes a new development of the GNAT Ada95 compilation system (GNORT) that is appropriate for the development of high integrity embedded systems. We describe GNORT, the motivation for its development, and give some technical detail of its implementation. The latter part of the paper goes on to describe SHOLIS—an existing safety-critical application written in SPARK 83 that has been re-engineered to take advantage of SPARK 95 and GNORT. We assess the benefits of this approach through metrics on the SHOLIS application source and object code. These data may be of interest to engineers who are considering Ada95 for a new project or converting an existing Ada83 application to Ada95.
منابع مشابه
Bakar Kiasan: Flexible Contract Checking for Critical Systems Using Symbolic Execution
Spark, a subset of Ada for engineering safety and security-critical systems, is one of the best commercially available frameworks for formal-methodssupported development of critical software. Spark is designed for verification and includes a software contract language for specifying functional properties of procedures. Even though Spark and its static analysis components are beneficial and easy...
متن کاملA (Very) Short Introduction to SPARK: Language, Toolset, Projects, Formal Methods & Certification
Guidelines for the development of software in safety-critical systems usually restrict programming languages, removing features that are unsafe and/or hard to thoroughly test and certify. There are also recommendations and demands in newer guidelines for the use of formal methods, as a way to achieve high assurance software. SPARK is a strict subset of Ada that was designed to have unambiguous ...
متن کاملUsing the SPARK Toolset for Showing the Absence of Run-Time Errors in Safety-Critical Software
This paper reports the results of a study into the effectiveness of the SPARK toolset for showing the absence of run-time errors in safety-critical Ada software. In particular, the toolset is examined to determine how effective it is in finding run-time errors in a SPARK program, and how much of the process of proving freedom from run-time errors can be performed automatically. The study identi...
متن کاملThe Relationship between Critical Thinking and Patient Safety Culture in the Nurses
Introduction: Patient safety is one of the main components of health service quality, and patient safety culture is considered as one of the necessary factors in promotion of the patients’ safety. On the other hand, the application of critical thinking skills, by developing evidence-based practices, leads to positive outcomes in patients. This study aims to determine the relationship between c...
متن کاملIs Proof More Cost-Effective Than Testing?
ÐThis paper describes the use of formal development methods on an industrial safety-critical application. The Z notation was used for documenting the system specification and part of the design, and the SPARK subset of Ada was used for coding. However, perhaps the most distinctive nature of the project lies in the amount of proof that was carried out: proofs were carried out both at the Z level...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999